/**
 * SPDX-FileCopyrightText: 2023-2025 Sangfor Technologies Inc.
 * SPDX-License-Identifier: Mulan PSL v2
 */
/**
 *
 * @file postCSS 配置
 */

let themeSfxConfig = require('./theme.sfx.config.js');

module.exports = {
    map: !!themeSfxConfig.sourceMap,
    plugins: [
        require('postcss-import'),
        require('postcss-preset-env')({
            stage: 3,
            features: {
                'nesting-rules': true
            },
            browserslist: [
                '> 1%',
                'last 2 versions',
                'ie >= 8',
                'Chrome >= 30',
                'Firefox >= 20'
            ]
        }),

        // 将使用自定义属性的自定义属性和属性保留为其原始形式。默认情况下, 这两个都将保留。
        require('postcss-custom-properties')({
            preserve: false
        }),

        require('postcss-calc'),

        // 删除 :root 这些配置， postcss-custom-properties:preserve 配置为false已经没用
        require('postcss-remove-root'),
        require('postcss-nested'),      // 可以处理 &--xxxx {}的场景，功能比 nesting-rules要强

        // 支持 @media screen and (width <= 1440px)
        require('postcss-media-minmax'),

        require('cssnano')({            // 压缩
            autoprefixer: false,
            mergeRules: true
        })
    ]
};

